<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Kernel same-page merging</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Kernel_same-page_merging"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Kernel_same-page_merging rootpage-Kernel_same-page_merging skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Kernel same-page merging</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p class="mw-empty-elt">
</p>
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">Not to be confused with <a href="Direct_Rendering_Manager#Kernel_Mode_Setting" title="Direct Rendering Manager">Kernel Mode Setting</a>, abbreviated KMS.</div>
<p>In <a href="Computing" title="Computing">computing</a>, <b>kernel same-page merging</b> (<b>KSM</b>), also known as <b>kernel shared memory</b>, <b>memory merging</b>, <b>memory deduplication</b>, and <b>page deduplication</b> is a <a href="Kernel_(operating_system)" title="Kernel (operating system)">kernel</a> feature that makes it possible for a <a href="Hypervisor" title="Hypervisor">hypervisor</a> system to share <a href="Page_(computer_memory)" title="Page (computer memory)">memory pages</a> that have identical contents between multiple <a href="Process_(computing)" title="Process (computing)">processes</a> or <a href="Virtualization" title="Virtualization">virtualized</a> guests. While not directly linked, <a href="Kernel-based_Virtual_Machine" title="Kernel-based Virtual Machine">Kernel-based Virtual Machine</a> (KVM) can use KSM to merge memory pages occupied by <a href="Virtual_machine" title="Virtual machine">virtual machines</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Deduplication">Deduplication</h2></div>
<p>KSM performs memory deduplication by scanning through <a href="Main_memory" class="mw-redirect" title="Main memory">main memory</a> for physical pages that have identical content, and identifies the virtual pages that are mapped to those physical pages. It leaves one page unchanged, and re-maps each duplicate page to point to the same physical page, after which it releases the extra physical pages for re-use. It also marks both virtual pages as "<a href="Copy-on-write" title="Copy-on-write">copy-on-write</a>" (COW), so that kernel will automatically remap a virtual page back to having its own separate physical page as soon as any process begins to write to it.<sup id="cite_ref-lwn.net_1-0" class="reference"><a href="#cite_note-lwn.net-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</p><p>KSM was originally intended to run more virtual machines on one host by <a href="Shared_memory" title="Shared memory">sharing memory</a> between processes as well as virtual machines. An experimental implementation of KSM by Red Hat found that 52 virtual instances of Windows XP with 1 GB of memory, could run on a host computer that had only 16 GB of RAM.<sup id="cite_ref-kernelnewbies_2-0" class="reference"><a href="#cite_note-kernelnewbies-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> Upon its <a href="Implementation" title="Implementation">implementation</a>, users found KSM to also be useful for non-virtualized environments in which memory is at a premium.<sup id="cite_ref-IBM2_3-0" class="reference"><a href="#cite_note-IBM2-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-kernel.org_4-0" class="reference"><a href="#cite_note-kernel.org-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p><p>KSM was merged into the <a href="Linux_kernel" title="Linux kernel">Linux kernel</a> mainline in version 2.6.32, which was released on December 3, 2009.<sup id="cite_ref-IBM2_3-1" class="reference"><a href="#cite_note-IBM2-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-kernelnewbies_2-1" class="reference"><a href="#cite_note-kernelnewbies-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> To be effective, the operating system kernel must find identical memory pages held by different processes. The kernel also needs to predict whether the pages are likely to update infrequently enough that the merging would be an efficient use of processor resources.<sup id="cite_ref-kernel.org_4-1" class="reference"><a href="#cite_note-kernel.org-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> A concern is that although memory usage is reduced, CPU usage is increased, thus negating potential increases in performance.<sup id="cite_ref-lwn.net_1-1" class="reference"><a href="#cite_note-lwn.net-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Security_risks">Security risks</h2></div>
<p>Security is also a concern:
</p>
<ul><li>Allows circumvention of <a href="Address_space_layout_randomization" title="Address space layout randomization">address space layout randomization</a> (ASLR)<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup></li>
<li>Exposes information via <a href="Timing_attack" title="Timing attack">timing attacks</a><sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup></li>
<li>Allows contamination of cryptographic resources in other virtualized guests via the memory <a href="Row_hammer" title="Row hammer">row hammer</a> attack<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup></li></ul>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Data_deduplication" title="Data deduplication">Data deduplication</a> – Reduction of storage requirement by sharing duplicate files</li>
<li><a href="Single-instance_storage" title="Single-instance storage">Single-instance storage</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-lwn.net-1"><span class="mw-cite-backlink">^ <a href="#cite_ref-lwn.net_1-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-lwn.net_1-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://lwn.net/Articles/330589/">"KSM tries again"</a>. <i>lwn.net</i>. kernel.org<span class="reference-accessdate">. Retrieved <span class="nowrap">August 21,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-kernelnewbies-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-kernelnewbies_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-kernelnewbies_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://kernelnewbies.org/Linux_2_6_32#Kernel_Samepage_Merging_.28memory_deduplication.29">"Linux kernel 2.6.32, Section 1.3. Kernel Samepage Merging (memory deduplication)"</a>. <i>KernelNewbies.org</i>. December 3, 2009<span class="reference-accessdate">. Retrieved <span class="nowrap">August 12,</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-IBM2-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-IBM2_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-IBM2_3-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-unfit"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160709062356/http://www.ibm.com/developerworks/linux/library/l-kernel-shared-memory/">"Anatomy of Linux Kernel Shared Memory"</a>. <i>IBM Developer</i>. IBM. Archived from the original on July 9, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">August 21,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-kernel.org-4"><span class="mw-cite-backlink">^ <a href="#cite_ref-kernel.org_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-kernel.org_4-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.kernel.org/doc/ols/2009/ols2009-pages-19-28.pdf">"Increasing memory density by using KSM"</a> <span class="cs1-format">(PDF)</span>. <i>Kernel.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">August 21,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite id="CITEREFKuniyasu_SuzakiKengo_IijimaToshiki_YagiCyrille_Artho" class="citation web cs1">Kuniyasu Suzaki; Kengo Iijima; Toshiki Yagi; Cyrille Artho. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20130105174201/http://staff.aist.go.jp/k.suzaki/EuroSec2011-suzaki.pdf">"Memory Deduplication as a Threat to the Guest OS"</a> <span class="cs1-format">(PDF)</span>. Archived from <a rel="nofollow" class="external text" href="http://staff.aist.go.jp/k.suzaki/EuroSec2011-suzaki.pdf">the original</a> <span class="cs1-format">(PDF)</span> on January 5, 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">September 16,</span> 2013</span>.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><cite id="CITEREFBarresiRazaviPayerGross2015" class="citation web cs1">Barresi, Antonio; Razavi, Kaveh; <a href="Mathias_Payer" title="Mathias Payer">Payer, Mathias</a>; Gross, Thomas R. (August 2015). <a rel="nofollow" class="external text" href="https://www.usenix.org/system/files/conference/woot15/woot15-paper-barresi.pdf">"CAIN: Silently Breaking ASLR in the Cloud"</a> <span class="cs1-format">(PDF)</span>. <a href="USENIX" title="USENIX">USENIX</a><span class="reference-accessdate">. Retrieved <span class="nowrap">August 12,</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><cite id="CITEREFRed_HatPolyakov" class="citation web cs1">Red Hat; Polyakov, Andy. <a rel="nofollow" class="external text" href="https://access.redhat.com/blogs/766093/posts/1976303">"It's all a question of time - AES timing attacks on OpenSSL"</a>. <i>access.redhat.com</i>. Red Hat<span class="reference-accessdate">. Retrieved <span class="nowrap">August 4,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite id="CITEREFSchwarzlKraftLippGruss2021" class="citation web cs1">Schwarzl, Martin; Kraft, Erik; Lipp, Moritz; Gruss, Daniel (2021). <a rel="nofollow" class="external text" href="https://graz.pure.elsevier.com/en/publications/remote-memory-deduplication-attacks">"Remote Memory-Deduplication Attacks"</a>. Network and Distributed System Security Symposium<span class="reference-accessdate">. Retrieved <span class="nowrap">April 2,</span> 2022</span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://news.softpedia.com/news/new-ffs-rowhammer-attack-targets-linux-vm-setups-507290.shtml">"New FFS Rowhammer Attack Hijacks Linux VMs"</a>. August 14, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">August 17,</span> 2016</span>.</cite></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="https://www.kernel.org/doc/Documentation/vm/ksm.txt">Linux kernel documentation</a></li>
<li><a rel="nofollow" class="external text" href="https://fedoraproject.org/wiki/Features/KSM">Fedora KSM page</a></li>
<li><a rel="nofollow" class="external text" href="http://www.linux-kvm.org/page/KSM">Kernel-based virtual machine site - KSM</a></li></ul>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}
/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Linux_kernel514" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div id="Linux_kernel514" style="font-size:114%;margin:0 4em"><a href="Linux_kernel" title="Linux kernel">Linux kernel</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Organization</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Kernel19" scope="row" class="navbox-group" style="width:1%">Kernel</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Linux_Foundation" title="Linux Foundation">Linux Foundation</a></li>
<li><a href="Linux_Mark_Institute" title="Linux Mark Institute">Linux Mark Institute</a></li>
<li><a href="Linus's_law" title="Linus's law">Linus's law</a></li>
<li><a href="Tanenbaum%E2%80%93Torvalds_debate" title="Tanenbaum–Torvalds debate">Tanenbaum–Torvalds debate</a></li>
<li><a href="Tux_(mascot)" title="Tux (mascot)">Tux</a></li>
<li><a href="SCO%E2%80%93Linux_disputes" title="SCO–Linux disputes">SCO disputes</a></li>
<li><a href="Linaro" title="Linaro">Linaro</a></li>
<li><a href="GNU_General_Public_License#Version_2" title="GNU General Public License">GNU GPL v2</a></li>
<li><a href="Menuconfig" title="Menuconfig">menuconfig</a></li>
<li><a href="List_of_Linux-supported_computer_architectures" title="List of Linux-supported computer architectures">Supported computer architectures</a></li>
<li><a href="Linux_kernel_version_history" title="Linux kernel version history">Version history</a></li>
<li><a href="Criticism_of_Linux" title="Criticism of Linux">Criticism</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Support</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>Developers
<ul><li><i><a href="The_Linux_Programming_Interface" title="The Linux Programming Interface">The Linux Programming Interface</a></i></li>
<li><a href="Kernel.org" title="Kernel.org">kernel.org</a></li>
<li><a href="Linux_kernel_mailing_list" title="Linux kernel mailing list">LKML</a></li>
<li><a href="Linux_conference" class="mw-redirect" title="Linux conference">Linux conferences</a></li></ul></li>
<li>Users
<ul><li><a href="Linux_user_group" title="Linux user group">Linux User Group (LUG)</a></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">People</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Werner_Almesberger" title="Werner Almesberger">Werner Almesberger</a></li>
<li><a href="H._Peter_Anvin" title="H. Peter Anvin">H. Peter Anvin</a></li>
<li><a href="Jens_Axboe" title="Jens Axboe">Jens Axboe</a></li>
<li><a href="Moshe_Bar_(investor)" title="Moshe Bar (investor)">Moshe Bar</a></li>
<li><a href="Suparna_Bhattacharya" title="Suparna Bhattacharya">Suparna Bhattacharya</a></li>
<li><a href="Andries_Brouwer" title="Andries Brouwer">Andries Brouwer</a></li>
<li><a href="R%C3%A9my_Card" title="Rémy Card">Rémy Card</a></li>
<li><a href="Alan_Cox_(computer_programmer)" title="Alan Cox (computer programmer)">Alan Cox</a></li>
<li><a href="Matthew_Garrett" title="Matthew Garrett">Matthew Garrett</a></li>
<li><a href="Avi_Kivity" title="Avi Kivity">Avi Kivity</a></li>
<li><a href="Con_Kolivas" title="Con Kolivas">Con Kolivas</a></li>
<li><a href="Greg_Kroah-Hartman" title="Greg Kroah-Hartman">Greg Kroah-Hartman</a></li>
<li><a href="Benson_Leung" title="Benson Leung">Benson Leung</a></li>
<li><a href="Robert_Love" title="Robert Love">Robert Love</a></li>
<li><a href="David_S._Miller" title="David S. Miller">David S. Miller</a></li>
<li><a href="Ingo_Moln%C3%A1r" title="Ingo Molnár">Ingo Molnár</a></li>
<li><a href="Andrew_Morton_(computer_programmer)" title="Andrew Morton (computer programmer)">Andrew Morton</a></li>
<li><a href="Hans_Reiser" title="Hans Reiser">Hans Reiser</a></li>
<li><a href="Rusty_Russell" title="Rusty Russell">Rusty Russell</a></li>
<li><a href="Shuah_Khan" title="Shuah Khan">Shuah Khan</a></li>
<li><a href="Linus_Torvalds" title="Linus Torvalds">Linus Torvalds</a></li>
<li><a href="Theodore_Ts'o" title="Theodore Ts'o">Theodore Ts'o</a></li>
<li><a href="Stephen_Tweedie" title="Stephen Tweedie">Stephen Tweedie</a></li>
<li><a href="Harald_Welte" title="Harald Welte">Harald Welte</a></li>
<li><a href="Chris_Wright_(programmer)" title="Chris Wright (programmer)">Chris Wright</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Technical</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Debugging</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="CRIU" title="CRIU">CRIU</a></li>
<li><a href="Ftrace" title="Ftrace">ftrace</a></li>
<li><a href="Kdump_(Linux)" title="Kdump (Linux)">kdump</a></li>
<li><a href="Linux_kernel_oops" title="Linux kernel oops">Linux kernel oops</a></li>
<li><a href="SystemTap" title="SystemTap">SystemTap</a></li>
<li><a href="Berkeley_Packet_Filter" title="Berkeley Packet Filter">BPF</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Booting_process_of_Linux" title="Booting process of Linux">Startup</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Vmlinux" title="Vmlinux">vmlinux</a></li>
<li><a href="System.map" title="System.map">System.map</a></li>
<li><a href="Dracut_(software)" title="Dracut (software)">dracut</a></li>
<li><a href="Initrd" class="mw-redirect" title="Initrd">initrd</a></li>
<li><a href="Initramfs" class="mw-redirect" title="Initramfs">initramfs</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces" title="Linux kernel interfaces">ABIs</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Linux_Standard_Base" title="Linux Standard Base">Linux Standard Base</a></li>
<li><a href="X32_ABI" title="X32 ABI">x32 ABI</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces" title="Linux kernel interfaces">APIs</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Kernel</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces#SCI" title="Linux kernel interfaces">System Call<br>Interface</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="POSIX" title="POSIX">POSIX</a>
<ul><li><a href="Ioctl" title="Ioctl">ioctl</a></li>
<li><a href="Select_(Unix)" title="Select (Unix)">select</a></li>
<li><a href="Open_(system_call)" title="Open (system call)">open</a></li>
<li><a href="Read_(system_call)" title="Read (system call)">read</a></li>
<li><a href="Close_(system_call)" title="Close (system call)">close</a></li>
<li><a href="Sync_(Unix)" title="Sync (Unix)">sync</a></li>
<li>…</li></ul></li>
<li><a href="Linux_kernel_interfaces#Additions_to_POSIX" title="Linux kernel interfaces">Linux-only</a>
<ul><li><a href="Futex" title="Futex">futex</a></li>
<li><a href="Epoll" title="Epoll">epoll</a></li>
<li><a href="Splice_(system_call)" title="Splice (system call)">splice</a></li>
<li><a href="Dnotify" title="Dnotify">dnotify</a></li>
<li><a href="Inotify" title="Inotify">inotify</a></li>
<li><a href="Readahead" title="Readahead">readahead</a></li>
<li>…</li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces#In–kernel_APIs" title="Linux kernel interfaces">In-kernel</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Advanced_Linux_Sound_Architecture" title="Advanced Linux Sound Architecture">ALSA</a></li>
<li><a href="Crypto_API_(Linux)" title="Crypto API (Linux)">Crypto API</a></li>
<li><a href="Io_uring" title="Io uring">io uring</a></li>
<li><a href="Direct_Rendering_Manager" title="Direct Rendering Manager">DRM</a></li>
<li><a href="Kernfs_(Linux)" title="Kernfs (Linux)">kernfs</a></li>
<li><a href="Memory_barrier" title="Memory barrier">Memory barrier</a></li>
<li><a href="New_API" title="New API">New API</a></li>
<li><a href="Read-copy-update" title="Read-copy-update">RCU</a></li>
<li><a href="Video4Linux" title="Video4Linux">Video4Linux</a></li>
<li><a href="IIO_Framework" title="IIO Framework">IIO</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="User_space_and_kernel_space" title="User space and kernel space">Userspace</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Daemon_(computing)" title="Daemon (computing)">Daemons</a>,<br><a href="Virtual_file_system" title="Virtual file system">File systems</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>bpffs</li>
<li><a href="Configfs" title="Configfs">configfs</a></li>
<li><a href="Devfs" class="mw-redirect" title="Devfs">devfs</a></li>
<li><a href="Devpts" title="Devpts">devpts</a></li>
<li><a href="Debugfs" title="Debugfs">debugfs</a></li>
<li><a href="Filesystem_in_Userspace" title="Filesystem in Userspace">FUSE</a></li>
<li>hugetlbfs</li>
<li>pipefs</li>
<li><a href="Procfs" title="Procfs">procfs</a></li>
<li>securityfs</li>
<li>sockfs</li>
<li><a href="Sysfs" title="Sysfs">sysfs</a></li>
<li><a href="Tmpfs" title="Tmpfs">tmpfs</a></li>
<li><a href="Systemd" title="Systemd">systemd</a>
<ul><li><a href="Udev" title="Udev">udev</a></li></ul></li>
<li><a href="Kmscon" title="Kmscon">Kmscon</a></li>
<li><a href="Binfmt_misc" title="Binfmt misc">binfmt_misc</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Wrapper_library" title="Wrapper library">Wrapper<br>libraries</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="C_standard_library" title="C standard library">C standard library</a>
<ul><li><a href="Glibc" title="Glibc">glibc</a></li>
<li><a href="UClibc" title="UClibc">uClibc</a></li>
<li><a href="Bionic_(software)" title="Bionic (software)">Bionic</a>
<ul><li><a href="Libhybris" title="Libhybris">libhybris</a></li></ul></li>
<li><a href="Dietlibc" title="Dietlibc">dietlibc</a></li>
<li><a href="Embedded_GLIBC" class="mw-redirect" title="Embedded GLIBC">EGLIBC</a></li>
<li><a href="Klibc" title="Klibc">klibc</a></li>
<li><a href="Musl" title="Musl">musl</a></li>
<li><a href="Newlib" title="Newlib">Newlib</a></li></ul></li>
<li><a href="Cgroups" title="Cgroups">libcgroup</a></li>
<li><a href="Direct_Rendering_Manager" title="Direct Rendering Manager">libdrm</a></li>
<li><a href="Advanced_Linux_Sound_Architecture" title="Advanced Linux Sound Architecture">libalsa</a></li>
<li><a href="Evdev" title="Evdev">libevdev</a></li>
<li><a href="Libusb" title="Libusb">libusb</a></li>
<li><a href="Io_uring" title="Io uring">liburing</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Components</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Loadable_kernel_module" title="Loadable kernel module">Kernel modules</a></li>
<li><a href="BlueZ" class="mw-redirect" title="BlueZ">BlueZ</a></li>
<li><a href="Cgroups" title="Cgroups">cgroups</a></li>
<li><a href="Linux_console" title="Linux console">Console</a></li>
<li><a href="Bcache" title="Bcache">bcache</a></li>
<li><a href="Device_mapper" title="Device mapper">Device mapper</a></li>
<li><a href="Dm-cache" title="Dm-cache">dm-cache</a></li>
<li><a href="Dm-crypt" title="Dm-crypt">dm-crypt</a></li>
<li><a href="Direct_Rendering_Manager" title="Direct Rendering Manager">DRM</a></li>
<li><a href="EDAC_(Linux)" class="mw-redirect" title="EDAC (Linux)">EDAC</a></li>
<li><a href="Evdev" title="Evdev">evdev</a></li>
<li> (KSM)</li>
<li><a href="LIO_(SCSI_target)" title="LIO (SCSI target)">LIO</a></li>
<li><a href="Linux_framebuffer" title="Linux framebuffer">Framebuffer</a></li>
<li><a href="Logical_Volume_Manager_(Linux)" title="Logical Volume Manager (Linux)">LVM</a></li>
<li><a href="KMS_driver" class="mw-redirect" title="KMS driver">KMS driver</a></li>
<li><a href="Netfilter" title="Netfilter">Netfilter</a></li>
<li><a href="Netlink" title="Netlink">Netlink</a></li>
<li><a href="Nftables" title="Nftables">nftables</a></li>
<li><a href="Network_scheduler" title="Network scheduler">Network scheduler</a></li>
<li><a href="Perf_(Linux)" title="Perf (Linux)">perf</a></li>
<li><a href="SLUB_(software)" title="SLUB (software)">SLUB</a></li>
<li><a href="Zram" title="Zram">zram</a></li>
<li><a href="Zswap" title="Zswap">zswap</a></li></ul>
<ul><li><a href="Scheduling_(computing)#Linux" title="Scheduling (computing)">Process and I/O schedulers</a>:</li>
<li><a href="Brain_Fuck_Scheduler" title="Brain Fuck Scheduler">Brain Fuck Scheduler</a></li>
<li><a href="Completely_Fair_Scheduler" title="Completely Fair Scheduler">Completely Fair Scheduler</a> (CFS)</li>
<li><a href="Earliest_eligible_virtual_deadline_first_scheduling" title="Earliest eligible virtual deadline first scheduling">Earliest eligible virtual deadline first</a> (EEVDF)</li>
<li><a href="Noop_scheduler" title="Noop scheduler">Noop scheduler</a></li>
<li><a href="O(n)_scheduler" title="O(n) scheduler">O(n) scheduler</a></li>
<li><a href="O(1)_scheduler" title="O(1) scheduler">O(1) scheduler</a></li>
<li><a href="SCHED_DEADLINE" title="SCHED DEADLINE">SCHED_DEADLINE</a></li>
<li><a href="SCHED_FIFO" class="mw-redirect" title="SCHED FIFO">SCHED_FIFO</a></li>
<li><a href="SCHED_RR" class="mw-redirect" title="SCHED RR">SCHED_RR</a></li></ul>
<ul><li><a href="Linux_Security_Modules" title="Linux Security Modules">Security Modules</a>: <a href="AppArmor" title="AppArmor">AppArmor</a></li>
<li><a href="Exec_Shield" title="Exec Shield">Exec Shield</a></li>
<li><a href="Seccomp" title="Seccomp">seccomp</a></li>
<li><a href="Security-Enhanced_Linux" title="Security-Enhanced Linux">SELinux</a></li>
<li><a href="Smack_(software)" title="Smack (software)">Smack</a></li>
<li><a href="Tomoyo_Linux" title="Tomoyo Linux">Tomoyo Linux</a></li>
<li><a href="Linux_PAM" title="Linux PAM">Linux PAM</a></li></ul>
<ul><li><a href="Device_driver" title="Device driver">Device drivers</a>
<ul><li><a href="Comparison_of_open-source_wireless_drivers" title="Comparison of open-source wireless drivers">802.11</a></li>
<li><a href="Free_and_open-source_graphics_device_driver" title="Free and open-source graphics device driver">graphics</a></li></ul></li>
<li><a href="Raw_device" title="Raw device">Raw device</a></li></ul>
<ul><li><a href="Initramfs" class="mw-redirect" title="Initramfs">initramfs</a></li>
<li><a href="KernelCare" title="KernelCare">KernelCare</a></li>
<li><a href="Kexec" title="Kexec">kexec</a></li>
<li><a href="KGraft" title="KGraft">kGraft</a></li>
<li><a href="Kpatch" title="Kpatch">kpatch</a></li>
<li><a href="Ksplice" title="Ksplice">Ksplice</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Variants</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Mainline_Linux" class="mw-redirect" title="Mainline Linux">Mainline</a>
<ul><li><a href="Linux_kernel" title="Linux kernel">Linux kernel</a></li>
<li><a href="Linux-libre" title="Linux-libre">Linux-libre</a></li></ul></li>
<li><a href="High-performance_computing" title="High-performance computing">High-performance computing</a>
<ul><li><a href="INK_(operating_system)" title="INK (operating system)">INK</a></li>
<li><a href="Compute_Node_Linux" title="Compute Node Linux">Compute Node Linux</a></li>
<li><a href="Slurm_Workload_Manager" title="Slurm Workload Manager">SLURM</a></li></ul></li>
<li><a href="Real-time_computing" title="Real-time computing">Real-time computing</a>
<ul><li><a href="RTLinux" title="RTLinux">RTLinux</a></li>
<li><a href="RTAI" title="RTAI">RTAI</a></li>
<li><a href="Xenomai" title="Xenomai">Xenomai</a></li>
<li><a href="PREEMPT_RT" title="PREEMPT RT">PREEMPT_RT</a></li></ul></li>
<li><a href="Memory_management_unit" title="Memory management unit">MMU</a>-less
<ul><li><a href="%CE%9CClinux" title="ΜClinux">μClinux</a></li>
<li><a href="PSXLinux" title="PSXLinux">PSXLinux</a></li></ul></li></ul>
</div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Virtualization18" scope="row" class="navbox-group" style="width:1%"><a href="Virtualization" title="Virtualization">Virtualization</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Hypervisor" title="Hypervisor">Hypervisor</a>
<ul><li><a href="Kernel-based_Virtual_Machine" title="Kernel-based Virtual Machine">KVM</a></li>
<li><a href="Xen" title="Xen">Xen</a></li></ul></li>
<li><a href="OS-level_virtualization" title="OS-level virtualization">OS-level virtualization</a>
<ul><li><a href="Linux-VServer" title="Linux-VServer">Linux-VServer</a></li>
<li><a href="Lguest" title="Lguest">Lguest</a></li>
<li><a href="LXC" title="LXC">LXC</a></li>
<li><a href="OpenVZ" title="OpenVZ">OpenVZ</a></li></ul></li>
<li>Other
<ul><li><a href="L4Linux" title="L4Linux">L4Linux</a></li>
<li><a href="User-mode_Linux" title="User-mode Linux">User-mode Linux</a></li>
<li><a href="MkLinux" title="MkLinux">MkLinux</a></li>
<li><a href="Cooperative_Linux" title="Cooperative Linux">coLinux</a></li></ul></li></ul>
</div></td></tr></tbody></table><div>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_adoption" title="Linux adoption">Adoption</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Rangeof_use48" scope="row" class="navbox-group" style="width:1%"><a href="Linux_range_of_use" title="Linux range of use">Range<br>of use</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Linux_desktop_environments" class="mw-redirect" title="Linux desktop environments">Desktop</a></li>
<li><a href="Linux_on_embedded_systems" title="Linux on embedded systems">Embedded</a></li>
<li><a href="Video_games_and_Linux" title="Video games and Linux">Gaming</a></li>
<li>Thin client:
<ul><li><a href="Linux_Terminal_Server_Project" title="Linux Terminal Server Project">LTSP</a></li></ul></li>
<li>Server:
<ul><li><a href="LAMP_(software_bundle)" title="LAMP (software bundle)">LAMP</a></li>
<li><a href="LYME_(software_bundle)" title="LYME (software bundle)">LYME-LYCE</a></li></ul></li>
<li><a href="Linux-powered_device" title="Linux-powered device">Devices</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Adopters</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="List_of_Linux_adopters" title="List of Linux adopters">List of Linux adopters</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><b><span class="nowrap"><span class="noviewer" typeof="mw:File"></span> </span><a href="Portal%3ALinux" title="Portal:Linux">Linux portal</a></b></li>
<li><b><span class="nowrap"><span class="noviewer" typeof="mw:File"><span></span></span> </span><a href="Portal%3AFree_and_open-source_software" title="Portal:Free and open-source software">Free and open-source software portal</a></b></li>
<li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> <b>Category</b></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Linux634" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Linux634" style="font-size:114%;margin:0 4em"><a href="Linux" title="Linux">Linux</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel" title="Linux kernel">Linux kernel</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="History_of_Linux" title="History of Linux">History</a></li>
<li><a href="Linus's_law" title="Linus's law">Linus's law</a></li>
<li><a href="Linux-libre" title="Linux-libre">Linux-libre</a></li>
<li><a href="Booting_process_of_Linux" title="Booting process of Linux">Booting process</a></li>
<li><a href="Linux_kernel_oops" title="Linux kernel oops">Kernel oops</a></li>
<li><a href="Tux_(mascot)" title="Tux (mascot)">Tux</a></li>
<li><i>more…</i></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Controversies</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Criticism_of_Linux" title="Criticism of Linux">Criticism of Linux</a></li>
<li><a href="Criticism_of_desktop_Linux" title="Criticism of desktop Linux">Criticism of desktop Linux</a></li>
<li><a href="GNU/Linux_naming_controversy" title="GNU/Linux naming controversy">GNU/Linux naming controversy</a></li>
<li><a href="Tanenbaum%E2%80%93Torvalds_debate" title="Tanenbaum–Torvalds debate">Tanenbaum–Torvalds debate</a></li>
<li><a href="SCO%E2%80%93Linux_disputes" title="SCO–Linux disputes">SCO and Linux</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_distribution" title="Linux distribution">Distributions</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Comparison_of_Linux_distributions" title="Comparison of Linux distributions">General comparison</a></li>
<li><a href="List_of_Linux_distributions" title="List of Linux distributions">Distributions list</a></li>
<li><a href="Comparison_of_netbook-oriented_Linux_distributions" title="Comparison of netbook-oriented Linux distributions">Netbook-specific comparison</a></li>
<li><a href="List_of_Linux_distributions_that_run_from_RAM" title="List of Linux distributions that run from RAM">Distributions that run from RAM</a></li>
<li><a href="Light-weight_Linux_distribution" class="mw-redirect" title="Light-weight Linux distribution">Lightweight</a></li>
<li><a href="Security-focused_operating_system#Linux" title="Security-focused operating system">Security-focused operating system</a></li>
<li><a href="Package_manager" title="Package manager">Package manager</a>
<ul><li><a href="Package_format" title="Package format">Package format</a></li>
<li><a href="List_of_software_package_management_systems" title="List of software package management systems">List of software package managers</a></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Organizations</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="LinuxChix" title="LinuxChix">LinuxChix</a></li>
<li><a href="Linux_Counter" title="Linux Counter">Linux Counter</a></li>
<li><a href="Linux_Documentation_Project" title="Linux Documentation Project">Linux Documentation Project</a></li>
<li><a href="Linux_Foundation" title="Linux Foundation">Linux Foundation</a></li>
<li><a href="Linux_Mark_Institute" title="Linux Mark Institute">Linux Mark Institute</a></li>
<li><a href="Linux_user_group" title="Linux user group">Linux User Group (LUG)</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_adoption" title="Linux adoption">Adoption</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="List_of_Linux_adopters" title="List of Linux adopters">Adopters</a></li>
<li><a href="Linux_desktop_environments" class="mw-redirect" title="Linux desktop environments">Desktop</a></li>
<li><a href="Linux_on_embedded_systems" title="Linux on embedded systems">Embedded</a></li>
<li><a href="Linux_gaming" class="mw-redirect" title="Linux gaming">Gaming</a></li>
<li><a href="Linux_for_mobile_devices" title="Linux for mobile devices">Mobile</a></li>
<li><a href="Linux_range_of_use" title="Linux range of use">Range of use</a></li>
<li><a href="Linux_malware" title="Linux malware">Linux malware</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Media</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="DistroWatch" title="DistroWatch">DistroWatch</a></li>
<li><i><a href="Free_Software_Magazine" title="Free Software Magazine">Free Software Magazine</a></i></li>
<li><i><a href="Full_Circle_(magazine)" title="Full Circle (magazine)">Full Circle</a></i></li>
<li><a href="Linux.com" title="Linux.com">Linux.com</a></li>
<li><i><a href="Linux_Format" title="Linux Format">Linux Format</a></i></li>
<li><i><a href="Linux_Gazette" title="Linux Gazette">Linux Gazette</a></i></li>
<li><i><a href="Linux_Journal" title="Linux Journal">Linux Journal</a></i></li>
<li><i><a href="Linux_Magazine" title="Linux Magazine">Linux Magazine</a></i></li>
<li><i><a href="LinuxUser" title="LinuxUser">LinuxUser</a></i>
<ul><li><i><a href="Ubuntu_User" title="Ubuntu User">Ubuntu User</a></i></li></ul></li>
<li><a href="Linux_Outlaws" title="Linux Outlaws">Linux Outlaws</a></li>
<li><i><a href="Linux_Voice" title="Linux Voice">Linux Voice</a></i></li>
<li><a href="LugRadio" title="LugRadio">LugRadio</a></li>
<li><a href="LWN.net" title="LWN.net">LWN.net</a></li>
<li><a href="Phoronix_Test_Suite#Phoronix_website" title="Phoronix Test Suite">Phoronix</a></li>
<li><i><a href="Revolution_OS" title="Revolution OS">Revolution OS</a></i></li>
<li><a href="The_Code_(2001_film)" title="The Code (2001 film)"><i>The Code</i></a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="List_of_computer_security_certifications" title="List of computer security certifications">Security<br>certifications</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="CompTIA_Linux%2B" class="mw-redirect" title="CompTIA Linux+">CompTIA Linux+</a></li>
<li><a href="Linux_Foundation_Linux_Certification" class="mw-redirect" title="Linux Foundation Linux Certification">Linux Foundation</a></li>
<li><a href="Red_Hat_Certification_Program" title="Red Hat Certification Program">Red Hat</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><b><span class="nowrap"><span class="noviewer" typeof="mw:File"></span> </span><a href="Portal%3ALinux" title="Portal:Linux">Linux portal</a></b></li>
<li><b><span class="nowrap"><span class="noviewer" typeof="mw:File"><span></span></span> </span><a href="Portal%3AFree_and_open-source_software" title="Portal:Free and open-source software">Free and open-source software portal</a></b></li>
<li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> <b>Category</b></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2024-05-15" href="https://en.wikipedia.org/wiki/?title=Kernel_same-page_merging&oldid=1224011516">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>